1. Field of the Invention
The present invention generally relates to a data processing apparatus that processes encoded data by iterative decoding, and especially relates to a data signal processing apparatus that is configured to reproduce likelier data based on likelihood information acquired in the iterative decoding process.
2. Description of the Related Art
Data encoding and decoding processes are carried out in data transmitting/receiving units used in communication fields, such as mobile communications using cellular telephone terminals, satellite communications, and the like, optical disk apparatuses, magnetic disk drives, and so on. In recent years, the amount of data to be processed has been increasing due to transmission of pictures (still pictures, and moving pictures), music, etc., resulting in requirements of massive data transmission, massive memory, high-speed transmission, etc.
As data signal processing apparatuses that meet such requirements, there are, for example, turbo encoding units, LDPC (Low Density Parity Check Code) units, and decoding units corresponding to them. Hereafter, an outline of an example of a turbo encoding unit and a decoding unit corresponding thereto is explained.
Turbo encoding is an encoding technology that provides a high encoding gain, and has attracted attention in the communication fields. Generally, a turbo encoding unit includes two recursive systematic convolutional encoders that encode a data bit sequence u, and is configured, for example, as shown in FIG. 1 and FIG. 2.
In reference to FIG. 1, the turbo encoding unit has a first encoder 11, an interleaver (π1) 12, a second encoder 13, and a multiplexer 14. A data bit sequence u is provided to the second encoder 13 through the interleaver (π1) 12, and the first encoder 11.
The first encoder 11 and the second encoder 13 are recursive systematic convolutional encoders, and the first encoder 11 generates a parity bit sequence p1 that corresponds to the data bit sequence u that is input. Further, the interleaver (π1) 12 outputs a signal sequence that represents the data bit sequence u with the bit arrangement order changed. The second encoder 13 generates a parity bit sequence p2 that corresponds to the signal sequence from the interleaver (π1) 12.
The multiplexer (MUX/puncture) 14 multiplexes the data bit sequence u, the parity bit sequence p1 output from the first encoder 11 and the parity bit sequence p2 output from the second encoder 13 according to a predetermined rule, and generates an encoded data bit sequence yk. Further, when the data bit sequence u, and the parity bit sequences p1 and p2 are multiplexed, the multiplexer 14 culls out bits (puncture function) according to a predetermined rule, and raises the rate of encoding (encoding rate). The encoded data bit sequence yk generated as mentioned above is output from the turbo encoding unit. In a communication system, the encoded data bit sequence yk is transmitted from a transmitting unit after a modulating process in a predetermined manner.
A turbo encoding unit that is configured as shown in FIG. 2 includes two recursive systematic convolutional encoders (the first encoder 11 and the second encoder 13) that are connected in series via the interleaver (π1) 12. In reference to FIG. 2, the data bit sequence u is encoded by the first encoder 11, and the bit arrangement order of the signal sequence obtained by the first encoder is changed by the interleaver (π1) 12. Then, the signal sequence output from the interleaver (π1) 12 is encoded by the second encoder 13, and the signal sequence obtained by the second encoder is output as the encoded data bit sequence yk.
When a signal transmitted from a transmitting unit is received by a receiving unit, the received signal is demodulated, and signal value sequences U, Y1, and Y2 corresponding to the data bit sequence u contained in the encoded data bit yk and the parity bit sequences p1 and p2 , respectively, are obtained. The signal value sequences U, Y1, and Y2 are provided to a decoding unit that corresponds to the turbo encoding unit.
In the decoding unit that corresponds to the turbo encoding unit, soft-output decoding is carried out by two decoders corresponding to the two encoders, and soft-output information (likelihood information) about each information bit obtained by one of the decoders is provided to the other decoder as prior information. Then, such operation is performed repeatedly. For example, the decoding unit is configured as shown in FIG. 3 in order to process the decoded signal sequences U, Y1, and Y2 corresponding to bit sequences u, p1 , and p2 , respectively, contained in the encoded data bit sequence yk output from the turbo encoding unit that is shown in FIG. 1.
In reference to FIG. 3, the decoding unit includes a first soft-input soft-output decoder (SISO: Soft In Soft Out) 21, interleavers (π1) 22 and 23, a de-interleaver (π1−1) 25, a second soft-input soft-output decoder (SISO) 24, and a hard decision unit 26. The first soft-input soft-output decoder 21 corresponds to the first encoder 11, and the second soft-input soft-output decoder 24 corresponds to the second encoder 13.
The first soft-input soft-output decoder 21 receives the signal value sequences U and Y1, and further receives prior information L(u) from the second soft-input soft-output decoder 24 , and performs maximum a posteriori probability (MAP) decoding in order to ascertain a posteriori probability of each bit. The a posteriori probability is the probability of whether a bit uk is 0 or 1 under the conditions in which a signal value sequence Y (y0, y1, . . . , yk, . . . , yn) is detected. In MAP decoding, a log likelihood ratio L(u*) is calculated, which is a log ratio of the a posteriori probability P(uk|Y), according to the following formula.L(u*)=L(uk|Y)=ln{P(uk=1|Y)/P(uk32 0|Y)}  (1)
Here, in the formula (1), the signal value sequence Y represents the received signal value sequences U and Y1.
The probability of the bit uk being 1 is expressed by P(uk=1|Y), and the probability of the bit uk being 0 is expressed by P(uk=0|Y), which are calculated based on the trellis diagram that shows transition status obtained from the signal value sequences U and Y1.
Further, the log likelihood L(u*) is also expressed by the following formula.L(u*)=Lc×yk+L(uk)+Le(uk)  (2)
Here, Lc×yk is a communication path value, where Lc is a constant (communication path value constant) defined by S/N, and yk represents a received signal series y0, y1, . . . , yn). Further, L(uk) represents prior information about known appearance probability of uk=0 and uk=1, and Le(uk) represents extrinsic likelihood information relative to uk, which is obtained by constraint of a code.
From the formula (2), the first soft-input soft-output decoder 21 calculates the extrinsic likelihood information Le(uk) according to the following formula.Le(uk)=L(u*)−Lc×yk−L(uk)  (3)
By substituting L(u*) of the formula (3) with the log likelihood ratio L(u*) calculated by the formula (1), the extrinsic likelihood information Le(uk) is obtained. A sequence of pieces of the extrinsic likelihood information Le(uk) acquired one by one in this manner is supplied to the second soft-input soft-output decoder 24 as a sequence of prior information L(uk) through the interleaver (π1) 23. The second soft-input soft-output decoder 24 receives the sequence of the prior information L(uk), the signal value sequence U through the interleaver (π1) 22, and the signal value sequence Y2.
The second soft-input soft-output decoder 24 calculates an updated log likelihood ratio L(u*) based on the formula (1) and the prior information L(uk) that is input. Then, the extrinsic likelihood information Le(uk) is computed according to the formula (3), using the obtained log likelihood ratio L(u*), and the prior information L(uk) provided by the first soft-input soft-output decoder 21.
The extrinsic likelihood information Le(uk) acquired by the second soft-input soft-output decoder 24 is supplied to the first soft-input soft-output decoder 21 as prior information L(uk) through the de-interleaver (π1−1) 25. Then, the first soft-input soft-output decoder 21 computes the log likelihood ratio L(u*), and the extrinsic likelihood information Le(uk) based on the prior information L(uk), according to the above-described procedure. The extrinsic likelihood information Le(uk) is used as the prior information L(uk) of the second soft-input soft-output decoder 24.
In this manner, the first soft-input soft-output decoder 21 and the second soft-input soft-output decoder 24 repeat computing processes for obtaining the log likelihood ratio L(u*), using the extrinsic likelihood information Le(uk) computed by the other decoder as the prior information L(uk), hence called iterative decoding. Here, in the beginning of the process of the first soft-input soft-output decoder 21, the prior information L(uk) is set to zero (L(uk)=0).
The hard decision unit 26 determines whether a bit uk is 0 or 1 based on the log likelihood ratio L(u*) obtained by the second soft-input soft-output decoder 24, when the decoding processing has been carried out repeatedly for a predetermined number of times. If, for example, the log likelihood ratio L(u*) is positive (L(u*)>0), the bit uk is determined to be 1 (uk=1), and if, to the contrary, it is negative (L(u*)<0), the bit uk is determined to be 0 (uk=0). Further, the result is output as a decoding result Uk.
As the decoding process is repeated (iterative decoding proceeds), the probability of a bit being 1 becomes greater, and the probability of the bit being 0 becomes smaller, and vice versa. In other words, the difference between the two probabilities becomes greater, that is, the log likelihood ratio of the absolute value of the difference becomes greater, and the reliability of the determination by the hard decision unit 26 is increased.
Studies are being conducted as to applying the turbo encoding and decoding, used by communication systems, as described above, to data recording/reproducing apparatuses such as magnetic disk drives and optical disk apparatuses. An example that applies the turbo encoding and decoding to a magnetic disk drive has been proposed by, e.g., W. E. Ryan, “Performance of High Rate Turbo Codes on a PR4-Equalized Magnetic Recording Channel”, Proc. IEEE Int. Conf. On Communications, pp947–951, 1998.
In the data recording/reproducing apparatuses such as above described, turbo encoding is used by a recording system (write-in system) for writing data to a recording medium, and iterative decoding is used by a reproduction system (read-out system) for reproducing the data from the recording medium. By applying these techniques, data that are densely recorded on the recording medium (a magnetic disk, an optical disk, a magneto-optical disk, a magnetic tape, etc.) are reproduced reliably.
With a decoding unit that employs the iterative decoding technique for reproducing data as mentioned above, which is used by a receiving apparatus and a data reproducing apparatus, correct data reproduction is not available when SNR (Signal to Noise Ratio) is noticeably poor because of an obstacle in a communication path, defects (a crack, dust, etc.) of a recording medium, and the like, even if the decoding process is repeated a large number of times, with likelihood information (a log ratio of likelihood), indicative of reliability, tending to be centered near a determination threshold level in a hard determination process.
There may be cases where correct data are correctly reproduced through a large number of iterative decoding processes. However, in these cases, the data transfer rate is degraded.